package com.business.model.fornecedor;

import com.business.model.basico.Categoria;
import com.business.model.basico.RamoAtividade;
import com.business.model.pessoa.Pessoa;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.PrimaryKeyJoinColumn;

import org.hibernate.envers.Audited;

/**
 * @author Rodrigo
 * @version 1.0
 * @created 23-fev-2015 22:25:59
 */
@Audited
@Entity
@PrimaryKeyJoinColumn(name="IdPessoa")
public class Fornecedor extends Pessoa {

	/**
	 * 
	 */
	private static final long serialVersionUID = -2828439034021226305L;
	
	@Column(length=255)
	private String Observacoes;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="IdRamoAtividade")
	private RamoAtividade RamoAtividade;
	/**
	 * Lista de catergorias que o fornecedor atua.
	 */
	@ManyToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="IdCategoria")
	private Categoria Categorias;

	public Fornecedor(){

	}

	public void finalize() throws Throwable {
		super.finalize();
	}

	public String getObservacoes(){
		return Observacoes;
	}

	/**
	 * 
	 * @param newVal
	 */
	public void setObservacoes(String newVal){
		Observacoes = newVal;
	}

	public RamoAtividade getRamoAtividade(){
		return RamoAtividade;
	}

	/**
	 * 
	 * @param newVal
	 */
	public void setRamoAtividade(RamoAtividade newVal){
		RamoAtividade = newVal;
	}

	public Categoria getCategorias(){
		return Categorias;
	}

	/**
	 * 
	 * @param newVal
	 */
	public void setCategorias(Categoria newVal){
		Categorias = newVal;
	}

}